import { HashLocationStrategy, LocationStrategy } from '@angular/common';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { RouteReuseStrategy } from '@angular/router';
import { AdMobFree } from '@ionic-native/admob-free/ngx';
import { AppRate } from '@ionic-native/app-rate/ngx';
import { AppVersion } from '@ionic-native/app-version/ngx';
import { Clipboard } from '@ionic-native/clipboard/ngx';
import { InAppPurchase } from '@ionic-native/in-app-purchase/ngx';
import { Market } from '@ionic-native/market/ngx';
import { Ndef, NFC } from '@ionic-native/nfc/ngx';
import { SplashScreen } from '@ionic-native/splash-screen/ngx';
import { StatusBar } from '@ionic-native/status-bar/ngx';
import { BarcodeScanner } from '@ionic-native/barcode-scanner/ngx';
import { IonicModule, IonicRouteStrategy } from '@ionic/angular';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { EventsService } from './events.service';
import { Global } from './global.service';
import { LocalStorage } from './local-storage.service';

@NgModule({
	declarations: [AppComponent],
	entryComponents: [],
	imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],
	providers: [
		StatusBar, SplashScreen, AppRate, AppVersion, InAppPurchase, Market, AdMobFree, Clipboard, NFC, Ndef, BarcodeScanner,
		{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy },
		{ provide: LocationStrategy, useClass: HashLocationStrategy },
		LocalStorage, EventsService, Global
	],
	bootstrap: [AppComponent]
})
export class AppModule { }
